home *** CD-ROM | disk | FTP | other *** search
/ Just Call Me Internet / Just Call Me Internet.iso / prog / atari / c / zmdm_src / hi5025.s < prev    next >
Text File  |  1988-06-26  |  1KB  |  58 lines

  1. /
  2. /  Make hi rez screen bios handle 50 lines of 8x8 characters
  3. /
  4. /  Adapted to Mark Williams C use from origional PD asm posting
  5. /  from atari corp.
  6. /
  7. /         Jwahar Bammi
  8. /             usenet: cwruecmp!bammi@decvax.UUCP
  9. /            csnet:  bammi@cwru.edu
  10. /            arpa:   bammi@cwru.edu
  11. /             CompuServe: 71515,155
  12. /
  13.         .shri
  14.  
  15.     .globl hi50_
  16.  
  17. hi50_:                  / switch to 50 line mode
  18.     link    a6,$0          / routine preamble
  19.  
  20.     .word    0xA000          / get the important pointers (line A init)
  21.  
  22.     movea.l    4(a1),a1      / a1 -> 8x8 font header
  23.  
  24.     move.l  72(a1),-0x0A(a0)  / v_off_ad <- 8x8 offset table addr
  25.     move.l  76(a1),-0x16(a0)  / v_fnt_ad <- 8x8 font data addr
  26.  
  27.     move    $8,  -0x2E(a0)      / v_cel_ht <- 8    8x8 cell height
  28.     move    $49, -0x2A(a0)      / v_cel_my <- 49   maximum cell "Y"
  29.     move    $640,-0x28(a0)    / v_cel_wr <- 640  offset to cell Y+1
  30.  
  31.     unlk    a6          / routine postable
  32.     rts              / and return
  33.  
  34.    
  35. /
  36. / Make hi rez screen bios handle 25 lines of 8x16 characters
  37. /
  38.  
  39.     .globl hi25_
  40.  
  41. hi25_:                  / Switch to 25 lines display
  42.     link    a6,$0          / routine preamble
  43.  
  44.     .word   0xA000          / get the important pointers
  45.     
  46.     movea.l    8(a1),a1      / a1 -> 8x16 font header
  47.  
  48.     move.l  72(a1),-0x0A(a0)  / v_off_ad <- 8x16 offset table addr
  49.     move.l  76(a1),-0x16(a0)  / v_fnt_ad <- 8x16 font data addr
  50.  
  51.     move    $16,  -0x2E(a0)      / v_cel_ht <- 16    8x16 cell height
  52.     move    $24,  -0x2A(a0)      / v_cel_my <- 24    maximum cell "Y"
  53.     move    $1280,-0x28(a0)      /  v_cel_wr <- 1280  vertical byte offset
  54.  
  55.     unlk    a6          / routine postamble
  56.     rts              / bye
  57.